/*
 *  MouseViewIODevice.h
 *  MouseViewIODevice
 *
 *  Created by David Cox on 5/4/10.
 *  Copyright 2010 Harvard University. All rights reserved.
 *
 */

#ifndef ServersideConduit_H_
#define ServersideConduit_H_

#import "ServersideConduit_definitions.h"
#include <MWorksCore/ComponentInfo.h>
#include <MworksCore/ParameterValue.h>


#include <MWorksCore/Stimulus.h>
#include <MWorksCore/IODevice.h>
#include <MWorksCore/TrialBuildingBlocks.h>

#include <MWorksCore/EventStreamConduit.h>
#include <MWorksCore/Server.h>
#include <MWorksCore/ZeroMQIPCEventTransport.hpp>


namespace mw{
    
class ServersideConduit : public IODevice {

protected:

    shared_ptr<EventStreamConduit> conduit;
    std::string resource_name;
    

public:

    
    ServersideConduit(const ParameterValueMap &parameters);
    
    // No need to implement this method; it will be autogenerated
    static void describeComponent(ComponentInfo& info);

	virtual ~ServersideConduit();

};

}
#endif 
